Generally, as a transmission speed of interface between a host computer and a printer is higher than a printing speed of the printer, the printer has a large-capacity reception buffer. Received data is temporarily stored in the reception buffer. The printer performs printing while it sequentially reads the data stored in the buffer.
If an error occurs in data transmission from the host computer or a jam occurs in the printer, the host computer immediately stops the data transfer.
However, on the printer side, regarding data already stored in the reception buffer or an external buffer, as printing operation cannot be immediately stopped, unnecessary printing is continued.
Further, if printing must be performed for a long period as in the case of image drawing, even if an instruction is made to stop the printing operation, printing for the next file is not started until the unnecessary printing is completed. That is, waiting status is caused by the cancellation.
This problem is solved by forcibly deleting the content of the reception buffer by turning the power of the printer off or resetting the printer. However, in an environment where printing can be performed from plural host computers via a network or the like, when a user desires to delete his/her job, another user's print data may be stored in the reception buffer. In this case, the user may delete his/her job and further delete the other user's print job. The problem of printing cancellation becomes more serious as the buffer has a larger capacity.
Further, in recent printers, print data described in a page description language is interpreted. If the printer is reset when it has received data to the middle of one command, the sequence is shifted and even normal printing cannot be performed.